The name stack is used during selection mode to allow sets of rendering
commands to be uniquely identified. It consists of an ordered set of
unsigned integers and is initially empty.
ffffggggllllPPPPuuuusssshhhhNNNNaaaammmmeeee causes _n_a_m_e to be pushed onto the name stack. ffffggggllllPPPPooooppppNNNNaaaammmmeeee
pops one name off the top of the stack.
The maximum name stack depth is implementation-dependent; call
GGGGLLLL____MMMMAAAAXXXX____NNNNAAAAMMMMEEEE____SSSSTTTTAAAACCCCKKKK____DDDDEEEEPPPPTTTTHHHH to find out the value for a particular
implementation. It is an error to push a name onto a full stack, or to
pop a name off an empty stack. It is also an error to manipulate the
name stack between the execution of ffffggggllllBBBBeeeeggggiiiinnnn and the corresponding
execution of ffffggggllllEEEEnnnndddd. In any of these cases, the error flag is set and no
other change is made to GL state.
The name stack is always empty while the render mode is not GGGGLLLL____SSSSEEEELLLLEEEECCCCTTTT.
Calls to ffffggggllllPPPPuuuusssshhhhNNNNaaaammmmeeee or ffffggggllllPPPPooooppppNNNNaaaammmmeeee while the render mode is not GGGGLLLL____SSSSEEEELLLLEEEECCCCTTTT
are ignored.
EEEERRRRRRRROOOORRRRSSSS
GGGGLLLL____SSSSTTTTAAAACCCCKKKK____OOOOVVVVEEEERRRRFFFFLLLLOOOOWWWW is generated if ffffggggllllPPPPuuuusssshhhhNNNNaaaammmmeeee is called while the name
stack is full.
GGGGLLLL____SSSSTTTTAAAACCCCKKKK____UUUUNNNNDDDDEEEERRRRFFFFLLLLOOOOWWWW is generated if ffffggggllllPPPPooooppppNNNNaaaammmmeeee is called while the name
stack is empty.
GGGGLLLL____IIIINNNNVVVVAAAALLLLIIIIDDDD____OOOOPPPPEEEERRRRAAAATTTTIIIIOOOONNNN is generated if ffffggggllllPPPPuuuusssshhhhNNNNaaaammmmeeee or ffffggggllllPPPPooooppppNNNNaaaammmmeeee is
executed between a call to ffffggggllllBBBBeeeeggggiiiinnnn and the corresponding call to ffffggggllllEEEEnnnndddd.